
#ifndef GEARHANDLER_H
#define GEARHANDLER_H

#include <BHingeRestraint>
#include <BGearRestraint>
#include <BHandler>

using namespace BWE;

class GearHandler : public BHandler
{
public:
	GearHandler();
	~GearHandler();

protected:
	virtual void attached(BViewer* viewer);
	virtual void detached(BViewer* viewer);

	virtual void paint(BPainter& painter);
	virtual void render(BRender& render);

	virtual void styleEvent(const BEvent& event);

private:
	BHolder<BBody>			_nodeA;
	BHolder<BHingeRestraint>_hingeA;
	BHolder<BBody>			_nodeB;
	BHolder<BHingeRestraint>_hingeB;
	BHolder<BGearRestraint>	_restraint;
};

#endif
